<template>
  <div id="app">
    <div id="nav">
      <router-link to="/">Home</router-link>
      |
      <router-link to="/about">About</router-link>
    </div>
    <transition :name="className">
      <router-view/>
    </transition>
  </div>
</template>

<script>
export default {
  data: function () {
    return {
      className: 'fade',
    }
  },
  watch: {
    '$route'(to, from) {
      if (this.className === 'fade'){
        if (to.name === 'About'){
          this.className = 'fade1'
        }
      }else {
        if (to.name !== 'About'){
          this.className = 'fade'
        }
      }

    }
  }
}
</script>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
}

#nav {
  padding: 30px;
}

#nav a {
  font-weight: bold;
  color: #2c3e50;
}

#nav a.router-link-exact-active {
  color: #42b983;
}

.fade-enter-active, .fade-leave-active {
  transition: opacity 1s;
}

.fade-enter, .fade-leave-to {
  opacity: 0;
}

.fade-leave-to {
  display: none;
}

.fade1-enter-active, .fade1-leave-active {
  transition: opacity 5s;
}

.fade1-enter, .fade1-leave-to {
  opacity: 0;
}

.fade1-leave-to {
  display: none;
}
</style>
